package com.dormitory.management.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dormitory.management.system.entity.User;
import com.dormitory.management.system.req.UserPageReq;
import com.dormitory.management.system.req.UserUpdateReq;
import com.dormitory.management.system.resp.StuAndHouResp;
import com.dormitory.management.system.resp.UserResp;

public interface UserService extends IService<User> {
//    /**
//     * 添加用户
//     * @param req 插入内容
//     * @return
//     */
//    boolean save(UserSaveReq req);

//    /**
//     * 删除用户
//     * @param id 用户id
//     * @return
//     */
//    boolean delete(Long id);

    /**
     * 更新用户信息
     * @param req 更新内容
     * @return
     */
    boolean update(UserUpdateReq req);

    /**
     * 根据查询条件分页查询
     * @param req 查询条件
     * @return 分页列表
     */
    IPage<UserResp> getPage(UserPageReq req);

    /**
     * 获取当前用户的身份
     * @param username 用户账号
     * @return 用户身份
     */
    String getRoleKey(String username);

    /**
     * 获取当前用户的基础信息（除admin）
     * @param username 用户账号
     * @return 用户基本信息
     */
    StuAndHouResp getUserInfo(String username);
}
